All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH] Audigy SB0090 identification
@ 2005-03-31 20:23 Peter Zubaj
  2005-04-01 10:27 ` Takashi Iwai
  0 siblings, 1 reply; 2+ messages in thread
From: Peter Zubaj @ 2005-03-31 20:23 UTC (permalink / raw)
  To: alsa-devel

[-- Attachment #1: Type: text/plain, Size: 675 bytes --]

Please, forget previous patch - it was not good. This one is ok.

Description : This add identification of Audigy 1 model SB0090 and fixes 
problems with ac97 codec (mic not working).

Signed-off: Peter Zubaj <pzad@pobox.sk>

------------------------------------

I think Audigy 1 doesn't have spdif bug (this si why there is no 
.spdif_bug initialization). For me looks like this card identification 
will break AC3 pasthrough for all audigy 1 (I am not sure).  AFAIK all 
audigy cards have ac97 except Audigy 2 Platinium EX and Audigy 2 
Notebook (this is not supported).

One question: All subsystem ids are 0xXXXX1102 except for Audigy 1 ES, 
is this good ?

Peter Zubaj

[-- Attachment #2: audigy_sb0090.diff --]
[-- Type: text/x-patch, Size: 1342 bytes --]

diff -u o/emu10k1_main.c n/emu10k1_main.c
--- o/emu10k1_main.c	2005-03-31 20:05:47.000000000 +0200
+++ n/emu10k1_main.c	2005-03-31 22:05:52.000000000 +0200
@@ -619,12 +619,14 @@
 	 .id = "Audigy2",
 	 .emu10k2_chip = 1,
 	 .ca0108_chip = 1,
-	 .spk71 = 1} ,
+	 .spk71 = 1,
+	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0008, 
 	 .driver = "Audigy2", .name = "Audigy 2 Value [Unknown]", 
 	 .id = "Audigy2",
 	 .emu10k2_chip = 1,
-	 .ca0108_chip = 1} ,
+	 .ca0108_chip = 1,
+	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0004, .subsystem = 0x20071102,
 	 .driver = "Audigy2", .name = "Audigy 4 PRO [SB0380]", 
 	 .id = "Audigy2",
@@ -682,13 +684,21 @@
 	 .id = "Audigy",
 	 .emu10k2_chip = 1,
 	 .ca0102_chip = 1,
-	 .spdif_bug = 1} ,
+	 .spdif_bug = 1,
+	 .ac97_chip = 1} ,
+	{.vendor = 0x1102, .device = 0x0004, .subsystem = 0x00531102,
+	 .driver = "Audigy", .name = "Audigy 1 [SB0090]", 
+	 .id = "Audigy",
+	 .emu10k2_chip = 1,
+	 .ca0102_chip = 1,
+	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0004,
 	 .driver = "Audigy", .name = "Audigy 1 or 2 [Unknown]", 
 	 .id = "Audigy",
 	 .emu10k2_chip = 1,
 	 .ca0102_chip = 1,
-	 .spdif_bug = 1} ,
+	 .spdif_bug = 1,
+	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0002, .subsystem = 0x40011102,
 	 .driver = "EMU10K1", .name = "E-mu APS [4001]", 
 	 .id = "APS",

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Re: [PATCH] Audigy SB0090 identification
  2005-03-31 20:23 [PATCH] Audigy SB0090 identification Peter Zubaj
@ 2005-04-01 10:27 ` Takashi Iwai
  0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2005-04-01 10:27 UTC (permalink / raw)
  To: Peter Zubaj; +Cc: alsa-devel

[-- Attachment #1: Type: text/plain, Size: 998 bytes --]

At Thu, 31 Mar 2005 22:23:49 +0200,
Peter Zubaj wrote:
> 
> [1  <text/plain; ISO-8859-1 (7bit)>]
> Please, forget previous patch - it was not good. This one is ok.
> 
> Description : This add identification of Audigy 1 model SB0090 and fixes 
> problems with ac97 codec (mic not working).
> 
> Signed-off: Peter Zubaj <pzad@pobox.sk>

Thanks, applied to CVS.

> ------------------------------------
> 
> I think Audigy 1 doesn't have spdif bug (this si why there is no 
> .spdif_bug initialization). For me looks like this card identification 
> will break AC3 pasthrough for all audigy 1 (I am not sure).  AFAIK all 
> audigy cards have ac97 except Audigy 2 Platinium EX and Audigy 2 
> Notebook (this is not supported).

How about the patch below?  The new field "revision" is added, there.


> One question: All subsystem ids are 0xXXXX1102 except for Audigy 1 ES, 
> is this good ?

I don't know of Audigy 1 ES - it's from Creative?
It's marked also as buggy spdif.  Is it confirmed?


Takashi

[-- Attachment #2: Type: text/plain, Size: 2306 bytes --]

Index: alsa-kernel/include/emu10k1.h
===================================================================
RCS file: /home/iwai/cvs/alsa/alsa-kernel/include/emu10k1.h,v
retrieving revision 1.62
diff -u -r1.62 emu10k1.h
--- alsa-kernel/include/emu10k1.h	30 Mar 2005 13:19:22 -0000	1.62
+++ alsa-kernel/include/emu10k1.h	1 Apr 2005 10:23:09 -0000
@@ -1040,6 +1040,7 @@
 	u32 vendor;
 	u32 device;
 	u32 subsystem;
+	unsigned char revision;
 	unsigned char emu10k1_chip; /* Original SB Live. Not SB Live 24bit. */
 	unsigned char emu10k2_chip; /* Audigy 1 or Audigy 2. */
 	unsigned char ca0102_chip;  /* Audigy 1 or Audigy 2. Not SB Audigy 2 Value. */
Index: alsa-kernel/pci/emu10k1/emu10k1_main.c
===================================================================
RCS file: /home/iwai/cvs/alsa/alsa-kernel/pci/emu10k1/emu10k1_main.c,v
retrieving revision 1.52
diff -u -r1.52 emu10k1_main.c
--- alsa-kernel/pci/emu10k1/emu10k1_main.c	1 Apr 2005 10:13:33 -0000	1.52
+++ alsa-kernel/pci/emu10k1/emu10k1_main.c	1 Apr 2005 10:23:09 -0000
@@ -679,6 +679,14 @@
 	 .spk71 = 1,
 	 .spdif_bug = 1,
 	 .ac97_chip = 1} ,
+	{.vendor = 0x1102, .device = 0x0004, .revision = 0x04,
+	 .driver = "Audigy2", .name = "Audigy 2 [Unknown]",
+	 .id = "Audigy2",
+	 .emu10k2_chip = 1,
+	 .ca0102_chip = 1,
+	 .ca0151_chip = 1,
+	 .spdif_bug = 1,
+	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0004, .subsystem = 0x10020052,
 	 .driver = "Audigy", .name = "Audigy 1 ES [SB0160]", 
 	 .id = "Audigy",
@@ -693,11 +701,10 @@
 	 .ca0102_chip = 1,
 	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0004,
-	 .driver = "Audigy", .name = "Audigy 1 or 2 [Unknown]", 
+	 .driver = "Audigy", .name = "Audigy 1 [Unknown]", 
 	 .id = "Audigy",
 	 .emu10k2_chip = 1,
 	 .ca0102_chip = 1,
-	 .spdif_bug = 1,
 	 .ac97_chip = 1} ,
 	{.vendor = 0x1102, .device = 0x0002, .subsystem = 0x40011102,
 	 .driver = "EMU10K1", .name = "E-mu APS [4001]", 
@@ -781,8 +788,11 @@
 
 	for (c = emu_chip_details; c->vendor; c++) {
 		if (c->vendor == pci->vendor && c->device == pci->device) {
-			if (c->subsystem == emu->serial) break;
-			if (c->subsystem == 0) break;
+			if (c->subsystem && c->subsystem != emu->serial)
+				continue;
+			if (c->revision && c->revision != emu->revision)
+				continue;
+			break;
 		}
 	}
 	if (c->vendor == 0) {

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-04-01 10:27 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-31 20:23 [PATCH] Audigy SB0090 identification Peter Zubaj
2005-04-01 10:27 ` Takashi Iwai

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.