Skip to contentSkip to conversation

cs5536 ID for cs5535audio

PATCH In review René Rebe 3 participants 4 messages Dec 14, 2005 – Dec 15, 2005

lore
Share & tools
lore

René Rebe

author
#0 lore raw

PATCH 1/1 cs5536 ID for cs5535audio

Hi all,

relative to 2.6.15-rc5-mm2 / alsa-cvs, works for me:

Added AMD CS5536 to the cs5535audio driver.

pci/cs5535audio/cs5535audio.c renamed from pci/cs5535audio/cs5535audio.c.orig +4 -2
@@ -46,8 +46,10 @@
 static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP;
 
 static struct pci_device_id snd_cs5535audio_ids[] = {
-	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO, PCI_ANY_ID,
-		PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
 	{}
 };
 
Signature · 3 lines
René Rebe - Rubensstr. 64 - 12157 Berlin (Europe / Germany)
            http://www.exactcode.de | http://www.t2-project.org
            +49 (0)30  255 897 45
#1 lore raw

René Rebe napsal(a):

Quoted 11 lines

Hi all,

relative to 2.6.15-rc5-mm2 / alsa-cvs, works for me:

Added AMD CS5536 to the cs5535audio driver.

pci/cs5535audio/cs5535audio.c line 52

Quoted 9 lines
pci/cs5535audio/cs5535audio.c renamed from pci/cs5535audio/cs5535audio.c.orig +4 -2
@@ -46,8 +46,10 @@
 static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP;
 
 static struct pci_device_id snd_cs5535audio_ids[] = {
-	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO, PCI_ANY_ID,
-		PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },

Seems like a PCI_DEVICE() candidate

regards,

Signature · 3 lines
Jiri Slaby         www.fi.muni.cz/~xslaby
~\-/~      [email protected]      ~\-/~
B67499670407CE62ACC8 22A032CC55C339D47A7E
#2 lore raw
In reply to René Rebe
Quoted 6 lines · René Rebe

Hi all,

relative to 2.6.15-rc5-mm2 / alsa-cvs, works for me:

Added AMD CS5536 to the cs5535audio driver.

René,

Your patch looks fine to me. If possible, could you add an update for the Kconfig to list cs5536 within the cs5535audio entry. One thing though, I'm concerned about master mixer control on certain GX3 boards. There was an issue raised by Stefan Schweizer where the cs5535audio driver on GX3 boards (with at least one that used the Realtek ALC203 rev 0 ac97 codec) fails to provide functional master control. John Zulauf mentioned that certain GX3 reference board designs wire headphone out to the connector rather than main. I still haven't received the GX3 to test with so perhaps someone else would like to test an AC97_TUNE_HP_ONLY ac97_quirk. Here's a rough start that someone could use:

static char *ac97_quirk;
module_param(ac97_quirk, charp, 0444); MODULE_PARM_DESC(ac97_quirk, "AC'97 board specific workarounds.");

static struct ac97_quirk ac97_quirks[] __devinitdata = {
	{
		.subvendor = use lspci to find out,
		.subdevice = something,
		.name = "boardname",     /* codecname */
		.type = AC97_TUNE_HP_ONLY
	},
	{}
};

then add:

snd_ac97_tune_hardware(cs5535au->ac97, ac97_quirks, ac97_quirk);

after the snd_ac97_mixer call.

Thanks,
jk

Quoted 22 lines

--- sound/pci/cs5535audio/cs5535audio.c.orig 2005-12-14 14:39:11.000000000
+0100
+++ sound/pci/cs5535audio/cs5535audio.c 2005-12-14 14:29:23.000000000 +0100

pci/cs5535audio/cs5535audio.c renamed from pci/cs5535audio/cs5535audio.c.orig +4 -3
@@ -46,8 +46,10 @@
 static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP;
 
 static struct pci_device_id snd_cs5535audio_ids[] = {
-	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO, PCI_ANY_ID,
-		PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
 	{}
 };
 
 
 
--

René Rebe - Rubensstr. 64 - 12157 Berlin (Europe / Germany)

Quoted 4 lines
            http://www.exactcode.de | http://www.t2-project.org
            +49 (0)30  255 897 45

-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click

#3 lore raw
Quoted 10 lines · jayakumar alsa

pci/cs5535audio/cs5535audio.c line 54

Quoted 9 lines · René Rebe

static struct pci_device_id snd_cs5535audio_ids[] = {

pci/cs5535audio/cs5535audio.c renamed from pci/cs5535audio/cs5535audio.c.orig +4 -2
-	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO, PCI_ANY_ID,
-		PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
+	{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_AUDIO,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
 	{}
 };

René,

Also, as Jiri suggested, could you change those to:

PCI_DEVICE(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO) PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_AUDIO)

Thanks,
jk

-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click