* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
@ 2005-10-03 6:23 Peter Zubaj
0 siblings, 0 replies; 10+ messages in thread
From: Peter Zubaj @ 2005-10-03 6:23 UTC (permalink / raw)
To: Dave Jones; +Cc: alsa-devel, James, Linux Kernel Mailing List, perex
AFAIK this was fixed in CVS. Two cards have same model id (one has AC97, one not).
Fix:
http://sourceforge.net/mailarchive/forum.php?thread_id=8360485&forum_id=33141
Peter Zubaj
>-----P?vodn? spr?va-----
>Od: Dave Jones [mailto:davej@redhat.com]
>Odoslan?: 3. okt?bra 2005 1:28
>Komu: Linux Kernel Mailing List
>K?pia: alsa-devel@alsa-project.org; James@superbug.co.uk; perex@suse.cz
>Predmet: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
>
>
>On Tue, Sep 13, 2005 at 12:07:43PM -0700, Linux Kernel wrote:
>> tree b885c7a937061624c7f7e34444122b96cced5c16
>> parent 1b44c28dc180f4d0ea109e1fe4339b3403c2d530
>> author James Courtier-Dutton <James@superbug.co.uk> Sat, 10 Sep 2005 10:24:10 +0200
>> committer Jaroslav Kysela <perex@suse.cz> Mon, 12 Sep 2005 10:48:32 +0200
>>
>> [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
>>
>> EMU10K1/EMU10K2 driver
>> The card does not have an AC97 chip.
>> .subsystem = 0x80611102
>>
>> Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
>>
>> sound/pci/emu10k1/emu10k1_main.c | 5 ++---
>> 1 files changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/sound/pci/emu10k1/emu10k1_main.c b/sound/pci/emu10k1/emu10k1_main.c
>> --- a/sound/pci/emu10k1/emu10k1_main.c
>> +++ b/sound/pci/emu10k1/emu10k1_main.c
>> @@ -754,12 +754,11 @@ static emu_chip_details_t emu_chip_detai
>> .emu10k1_chip = 1,
>> .ac97_chip = 1,
>> .sblive51 = 1} ,
>> - /* Tested by alsa bugtrack user "hus" 12th Sept 2005 */
>> + /* Tested by alsa bugtrack user "hus" bug #1297 12th Aug 2005 */
>> {.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80611102,
>> - .driver = "EMU10K1", .name = "SBLive! Player 5.1 [SB0060]",
>> + .driver = "EMU10K1", .name = "SBLive! Platinum 5.1 [SB0060]",
>> .id = "Live",
>> .emu10k1_chip = 1,
>> - .ac97_chip = 1,
>> .sblive51 = 1} ,
>> {.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80511102,
>> .driver = "EMU10K1", .name = "SBLive! Value [CT4850]",
>
>That last line change reverts..
>
>tree efc4e418c80bf61beb2e1cfd1b2db405b471111f
>parent 9970dce56686d7b71310388025d8925d3d29e6ec
>author Takashi Iwai <tiwai@suse.de> Fri, 26 Aug 2005 17:26:40 +0200
>committer Jaroslav Kysela <perex@suse.cz> Tue, 30 Aug 2005 08:47:46 +0200
>
>[ALSA] emu10k1 - Add missing ac97 support on SBLive! Player 5.1
>
>EMU10K1/EMU10K2 driver
>Added the missing ac97 support on SBLive! Player 5.1.
>
>And makes peoples volume sliders disappear, which tends to upset folks.
>See https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=169152
>for reference.
>
>Signed-off-by: Dave Jones <davej@redhat.com>
>
>--- linux-2.6.13/sound/pci/emu10k1/emu10k1_main.c~ 2005-10-02 21:26:40.000000000 -0400
>+++ linux-2.6.13/sound/pci/emu10k1/emu10k1_main.c 2005-10-02 21:26:57.000000000 -0400
>@@ -759,6 +759,7 @@ static emu_chip_details_t emu_chip_detai
>.driver = "EMU10K1", .name = "SBLive! Platinum 5.1 [SB0060]",
>.id = "Live",
>.emu10k1_chip = 1,
>+ .ac97_chip = 1,
>.sblive51 = 1} ,
>{.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80511102,
>.driver = "EMU10K1", .name = "SBLive! Value [CT4850]",
>
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by:
>Power Architecture Resource Center: Free content, downloads, discussions,
>and more. http://solutions.newsforge.com/ibmarch.tmpl
>_______________________________________________
>Alsa-devel mailing list
>Alsa-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/alsa-devel
Aktivujte si neobmedzenu mailovu schranku na www.pobox.sk!
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-03 6:23 [Alsa-devel] " Peter Zubaj
@ 2005-10-04 0:54 ` Dave Jones
0 siblings, 0 replies; 10+ messages in thread
From: Dave Jones @ 2005-10-04 0:54 UTC (permalink / raw)
To: Peter Zubaj; +Cc: alsa-devel, James, Linux Kernel Mailing List, perex
On Mon, Oct 03, 2005 at 08:23:28AM +0200, Peter Zubaj wrote:
> AFAIK this was fixed in CVS. Two cards have same model id (one has AC97, one not).
>
> Fix:
>
> http://sourceforge.net/mailarchive/forum.php?thread_id=8360485&forum_id=33141
>
>From the look of that patch, this will just print
"emu10k1: AC97 is optional on this board Proceeding without ac97 mixers..."
and do nothing about actually making things work for people again,
or even to suggest what they can do to work around this situation
when their volume control breaks. At the least this sounds like it
needs to mention a module parameter to force ac97 support.
What actually happens if we set ac97_chip=1 on the boards that
don't have it ? Is it purely a cosmetic thing, showing some
sliders that do nothing?
Dave
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
@ 2005-10-04 6:39 Peter Zubaj
2005-10-04 10:50 ` [Alsa-devel] " Takashi Iwai
2005-10-04 11:05 ` James Courtier-Dutton
0 siblings, 2 replies; 10+ messages in thread
From: Peter Zubaj @ 2005-10-04 6:39 UTC (permalink / raw)
To: Dave Jones; +Cc: alsa-devel, James, Linux Kernel Mailing List, perex
If ac97_chip=1 and ac97 doesn't exists - driver will refuse to load.
If ac97_chip=2 and ac97 doesn't exists - driver should ignore ac97
But I don't know if this is correct (I am not author of patch and I not tested it).
if message is printed then there is
goto no_ac97; /* FIXME: get rid of ugly gotos.. */
this will skip ac97 mixer creation (if ac97 is not there this will fail and driver refuses to load)
But I don't know if snd_ac97_bus will fail if there is no ac97 codec (I think - not, and this is not correct), then test should be done on snd_ac97_mixer and not on snd_ac97_bus creation.
Peter Zubaj
>-----P?vodn? spr?va-----
>Od: Dave Jones [mailto:davej@redhat.com]
>Odoslan?: 4. okt?bra 2005 0:54
>Komu: Peter Zubaj
>K?pia: alsa-devel@alsa-project.org; James@superbug.co.uk; Linux Kernel Mailing List; perex@suse.cz
>Predmet: Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
>
>
>On Mon, Oct 03, 2005 at 08:23:28AM +0200, Peter Zubaj wrote:
>> AFAIK this was fixed in CVS. Two cards have same model id (one has AC97, one not).
>>
>> Fix:
>>
>> http://sourceforge.net/mailarchive/forum.php?thread_id=8360485&forum_id=33141
>>
>
>From the look of that patch, this will just print
>"emu10k1: AC97 is optional on this board Proceeding without ac97 mixers..."
>and do nothing about actually making things work for people again,
>or even to suggest what they can do to work around this situation
>when their volume control breaks. At the least this sounds like it
>needs to mention a module parameter to force ac97 support.
>
>What actually happens if we set ac97_chip=1 on the boards that
>don't have it ? Is it purely a cosmetic thing, showing some
>sliders that do nothing?
>
>Dave
>
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by:
>Power Architecture Resource Center: Free content, downloads, discussions,
>and more. http://solutions.newsforge.com/ibmarch.tmpl
>_______________________________________________
>Alsa-devel mailing list
>Alsa-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/alsa-devel
Aktivujte si neobmedzenu mailovu schranku na www.pobox.sk!
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-04 6:39 Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum Peter Zubaj
@ 2005-10-04 10:50 ` Takashi Iwai
2005-10-04 11:05 ` James Courtier-Dutton
1 sibling, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2005-10-04 10:50 UTC (permalink / raw)
To: Peter Zubaj
Cc: Dave Jones, alsa-devel, James, Linux Kernel Mailing List, perex
At Tue, 04 Oct 2005 08:39:36 +0200,
Peter Zubaj wrote:
>
>
> If ac97_chip=1 and ac97 doesn't exists - driver will refuse to load.
> If ac97_chip=2 and ac97 doesn't exists - driver should ignore ac97
>
> But I don't know if this is correct (I am not author of patch and I not tested it).
> if message is printed then there is
> goto no_ac97; /* FIXME: get rid of ugly gotos.. */
> this will skip ac97 mixer creation (if ac97 is not there this will fail and driver refuses to load)
> But I don't know if snd_ac97_bus will fail if there is no ac97 codec (I think - not, and this is not correct), then test should be done on snd_ac97_mixer and not on snd_ac97_bus creation.
You're right. The additional patch below fixes it.
Takashi
--- linux/sound/pci/emu10k1/emumixer.c 29 Sep 2005 17:59:43 -0000 1.38
+++ linux/sound/pci/emu10k1/emumixer.c 4 Oct 2005 10:48:42 -0000
@@ -802,21 +802,21 @@
.read = snd_emu10k1_ac97_read,
};
- 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.. */
- }
+ if ((err = snd_ac97_bus(emu->card, 0, &ops, NULL, &pbus)) < 0)
+ return err;
pbus->no_vra = 1; /* we don't need VRA */
memset(&ac97, 0, sizeof(ac97));
ac97.private_data = emu;
ac97.private_free = snd_emu10k1_mixer_free_ac97;
ac97.scaps = AC97_SCAP_NO_SPDIF;
- if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0)
- return err;
+ if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 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.. */
+ }
if (emu->audigy) {
/* set master volume to 0 dB */
snd_ac97_write(emu->ac97, AC97_MASTER, 0x0000);
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
@ 2005-10-04 10:50 ` Takashi Iwai
0 siblings, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2005-10-04 10:50 UTC (permalink / raw)
To: Peter Zubaj
Cc: Dave Jones, alsa-devel, James, Linux Kernel Mailing List, perex
At Tue, 04 Oct 2005 08:39:36 +0200,
Peter Zubaj wrote:
>
>
> If ac97_chip=1 and ac97 doesn't exists - driver will refuse to load.
> If ac97_chip=2 and ac97 doesn't exists - driver should ignore ac97
>
> But I don't know if this is correct (I am not author of patch and I not tested it).
> if message is printed then there is
> goto no_ac97; /* FIXME: get rid of ugly gotos.. */
> this will skip ac97 mixer creation (if ac97 is not there this will fail and driver refuses to load)
> But I don't know if snd_ac97_bus will fail if there is no ac97 codec (I think - not, and this is not correct), then test should be done on snd_ac97_mixer and not on snd_ac97_bus creation.
You're right. The additional patch below fixes it.
Takashi
--- linux/sound/pci/emu10k1/emumixer.c 29 Sep 2005 17:59:43 -0000 1.38
+++ linux/sound/pci/emu10k1/emumixer.c 4 Oct 2005 10:48:42 -0000
@@ -802,21 +802,21 @@
.read = snd_emu10k1_ac97_read,
};
- 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.. */
- }
+ if ((err = snd_ac97_bus(emu->card, 0, &ops, NULL, &pbus)) < 0)
+ return err;
pbus->no_vra = 1; /* we don't need VRA */
memset(&ac97, 0, sizeof(ac97));
ac97.private_data = emu;
ac97.private_free = snd_emu10k1_mixer_free_ac97;
ac97.scaps = AC97_SCAP_NO_SPDIF;
- if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0)
- return err;
+ if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 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.. */
+ }
if (emu->audigy) {
/* set master volume to 0 dB */
snd_ac97_write(emu->ac97, AC97_MASTER, 0x0000);
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-04 6:39 Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum Peter Zubaj
2005-10-04 10:50 ` [Alsa-devel] " Takashi Iwai
@ 2005-10-04 11:05 ` James Courtier-Dutton
2005-10-04 20:40 ` Dave Jones
1 sibling, 1 reply; 10+ messages in thread
From: James Courtier-Dutton @ 2005-10-04 11:05 UTC (permalink / raw)
To: Peter Zubaj; +Cc: Dave Jones, alsa-devel, perex
Peter Zubaj wrote:
>If ac97_chip=1 and ac97 doesn't exists - driver will refuse to load.
>If ac97_chip=2 and ac97 doesn't exists - driver should ignore ac97
>
>But I don't know if this is correct (I am not author of patch and I not tested it).
>if message is printed then there is
>goto no_ac97; /* FIXME: get rid of ugly gotos.. */
>this will skip ac97 mixer creation (if ac97 is not there this will fail and driver refuses to load)
>But I don't know if snd_ac97_bus will fail if there is no ac97 codec (I think - not, and this is not correct), then test should be done on snd_ac97_mixer and not on snd_ac97_bus creation.
>
>Peter Zubaj
>
>
>
>>-----P?vodn? spr?va-----
>>Od: Dave Jones [mailto:davej@redhat.com]
>>Odoslan?: 4. okt?bra 2005 0:54
>>Komu: Peter Zubaj
>>K?pia: alsa-devel@alsa-project.org; James@superbug.co.uk; Linux Kernel Mailing List; perex@suse.cz
>>Predmet: Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
>>
>>
>>On Mon, Oct 03, 2005 at 08:23:28AM +0200, Peter Zubaj wrote:
>>
>>
>>>AFAIK this was fixed in CVS. Two cards have same model id (one has AC97, one not).
>>>
>>>Fix:
>>>
>>>http://sourceforge.net/mailarchive/forum.php?thread_id=8360485&forum_id=33141
>>>
>>>
>>>
>>From the look of that patch, this will just print
>
>
>>"emu10k1: AC97 is optional on this board Proceeding without ac97 mixers..."
>>and do nothing about actually making things work for people again,
>>or even to suggest what they can do to work around this situation
>>when their volume control breaks. At the least this sounds like it
>>needs to mention a module parameter to force ac97 support.
>>
>>What actually happens if we set ac97_chip=1 on the boards that
>>don't have it ? Is it purely a cosmetic thing, showing some
>>sliders that do nothing?
>>
>>Dave
>>
>>
>>
>>
In my view the patch as presented is the correct behaviour.
We are aiming to identify every sound card using it's PCI subversion
IDs. We should then know exactly which sound card we have, and therefore
know which chips are present. This information is vital for us
developers when we get reports of Audigy card X not working, as every
single Audigy card has slight but very important differences that can
only be detected via the PCI subversion IDs. This patch was required
because two very different sound cards both had the same PCI subversion
IDs. So, for this case, and only this case we have no alternative but to
try and handle the two alternatives for this PCI subversion ID. One with
AC97 chip, and one without the AC97 chip. This patch will therefore only
effect 2 sound cards, and therefore has minimal impact on all the other
sound cards currently recognised. It is always better to try and
autodetect hardware features, than require a new module parameter, so
adding a module parameter is not a viable option here. We already have a
module parameter to force the driver to bypass is PCI subversion ID
recognition and assume a different card id so when a new sound card
appears, the user can work around the recognition problem until the
recognition is added to the driver.
James
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-04 10:50 ` [Alsa-devel] " Takashi Iwai
(?)
@ 2005-10-04 11:08 ` James Courtier-Dutton
2005-10-04 11:14 ` Takashi Iwai
-1 siblings, 1 reply; 10+ messages in thread
From: James Courtier-Dutton @ 2005-10-04 11:08 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Peter Zubaj, Dave Jones, alsa-devel, perex
Takashi Iwai wrote:
>At Tue, 04 Oct 2005 08:39:36 +0200,
>Peter Zubaj wrote:
>
>
>>If ac97_chip=1 and ac97 doesn't exists - driver will refuse to load.
>>If ac97_chip=2 and ac97 doesn't exists - driver should ignore ac97
>>
>>But I don't know if this is correct (I am not author of patch and I not tested it).
>>if message is printed then there is
>>goto no_ac97; /* FIXME: get rid of ugly gotos.. */
>>this will skip ac97 mixer creation (if ac97 is not there this will fail and driver refuses to load)
>>But I don't know if snd_ac97_bus will fail if there is no ac97 codec (I think - not, and this is not correct), then test should be done on snd_ac97_mixer and not on snd_ac97_bus creation.
>>
>>
>
>You're right. The additional patch below fixes it.
>
>
>Takashi
>
>
>--- linux/sound/pci/emu10k1/emumixer.c 29 Sep 2005 17:59:43 -0000 1.38
>+++ linux/sound/pci/emu10k1/emumixer.c 4 Oct 2005 10:48:42 -0000
>@@ -802,21 +802,21 @@
> .read = snd_emu10k1_ac97_read,
> };
>
>- 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.. */
>- }
>+ if ((err = snd_ac97_bus(emu->card, 0, &ops, NULL, &pbus)) < 0)
>+ return err;
> pbus->no_vra = 1; /* we don't need VRA */
>
> memset(&ac97, 0, sizeof(ac97));
> ac97.private_data = emu;
> ac97.private_free = snd_emu10k1_mixer_free_ac97;
> ac97.scaps = AC97_SCAP_NO_SPDIF;
>- if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0)
>- return err;
>+ if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 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.. */
>+ }
> if (emu->audigy) {
> /* set master volume to 0 dB */
> snd_ac97_write(emu->ac97, AC97_MASTER, 0x0000);
>
>
>
>
Surely is the snd_ac97_bus() always passes, and then the
snd_ac97_mixer() fails, it would be cleaner to undo the snd_ac97_bus()
as well.
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-04 11:08 ` James Courtier-Dutton
@ 2005-10-04 11:14 ` Takashi Iwai
0 siblings, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2005-10-04 11:14 UTC (permalink / raw)
To: James Courtier-Dutton; +Cc: Peter Zubaj, Dave Jones, alsa-devel, perex
At Tue, 04 Oct 2005 12:08:53 +0100,
James Courtier-Dutton wrote:
>
> Surely is the snd_ac97_bus() always passes, and then the
> snd_ac97_mixer() fails, it would be cleaner to undo the snd_ac97_bus()
> as well.
Like the one below?
Takashi
--- linux/sound/pci/emu10k1/emumixer.c 29 Sep 2005 17:59:43 -0000 1.38
+++ linux/sound/pci/emu10k1/emumixer.c 4 Oct 2005 11:13:45 -0000
@@ -802,21 +802,22 @@
.read = snd_emu10k1_ac97_read,
};
- 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.. */
- }
+ if ((err = snd_ac97_bus(emu->card, 0, &ops, NULL, &pbus)) < 0)
+ return err;
pbus->no_vra = 1; /* we don't need VRA */
memset(&ac97, 0, sizeof(ac97));
ac97.private_data = emu;
ac97.private_free = snd_emu10k1_mixer_free_ac97;
ac97.scaps = AC97_SCAP_NO_SPDIF;
- if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0)
- return err;
+ if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 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");
+ snd_device_free(emu->card, pbus);
+ goto no_ac97; /* FIXME: get rid of ugly gotos.. */
+ }
if (emu->audigy) {
/* set master volume to 0 dB */
snd_ac97_write(emu->ac97, AC97_MASTER, 0x0000);
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-04 11:05 ` James Courtier-Dutton
@ 2005-10-04 20:40 ` Dave Jones
2005-10-05 11:58 ` Takashi Iwai
0 siblings, 1 reply; 10+ messages in thread
From: Dave Jones @ 2005-10-04 20:40 UTC (permalink / raw)
To: James Courtier-Dutton; +Cc: Peter Zubaj, alsa-devel, perex
On Tue, Oct 04, 2005 at 12:05:29PM +0100, James Courtier-Dutton wrote:
> In my view the patch as presented is the correct behaviour.
Clearly you aren't one of the affected users now unable to adjust
the volume on their sound cards.
> We are aiming to identify every sound card using it's PCI subversion
> IDs.
Which is flawed due to the ID clash between the two cards.
What the patch is doing is saying "Oops, there's a problem with
this approach, lets stick our heads in the sand and pretend it
isn't there" instead of trying to come to some compromise to
allow both sets of cards to work.
I'm glad the Audigy is now working. However, we should not make
one card work by breaking another.
> This information is vital for us
> developers when we get reports of Audigy card X not working, as every
> single Audigy card has slight but very important differences that can
> only be detected via the PCI subversion IDs.
At the expense of users of working SBLive 5.1 setups.
user: "Where have my sblive volume sliders gone?"
me : "Oh, that's intentional so that we can identify Audigy's"
user: "wtf?"
> This patch will therefore only
> effect 2 sound cards, and therefore has minimal impact on all the other
> sound cards currently recognised.
One of those models is now effectively useless however.
> It is always better to try and
> autodetect hardware features, than require a new module parameter, so
> adding a module parameter is not a viable option here.
We obviously *can't* autodetect between the two here, unless you add
some additional checks (PCI revision field perhaps?).
> We already have a
> module parameter to force the driver to bypass is PCI subversion ID
> recognition and assume a different card id so when a new sound card
> appears, the user can work around the recognition problem until the
> recognition is added to the driver.
The recognition isn't the issue, I couldn't care less if the driver
called it a soundblaster moonunit, all I (and quite a few users judging
by bugzilla) care about is whether the thing works.
Dave
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
2005-10-04 20:40 ` Dave Jones
@ 2005-10-05 11:58 ` Takashi Iwai
0 siblings, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2005-10-05 11:58 UTC (permalink / raw)
To: Dave Jones; +Cc: James Courtier-Dutton, Peter Zubaj, alsa-devel, perex
At Tue, 4 Oct 2005 16:40:34 -0400,
Dave Jones wrote:
>
> > It is always better to try and
> > autodetect hardware features, than require a new module parameter, so
> > adding a module parameter is not a viable option here.
>
> We obviously *can't* autodetect between the two here, unless you add
> some additional checks (PCI revision field perhaps?).
Unfortunately, both seem identical, too :-<
Takashi
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2005-10-05 11:58 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-04 6:39 Re: [Alsa-devel] Re: [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum Peter Zubaj
2005-10-04 10:50 ` Takashi Iwai
2005-10-04 10:50 ` [Alsa-devel] " Takashi Iwai
2005-10-04 11:08 ` James Courtier-Dutton
2005-10-04 11:14 ` Takashi Iwai
2005-10-04 11:05 ` James Courtier-Dutton
2005-10-04 20:40 ` Dave Jones
2005-10-05 11:58 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2005-10-03 6:23 [Alsa-devel] " Peter Zubaj
2005-10-04 0:54 ` Dave Jones
2005-10-03 6:23 Peter Zubaj
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.