Skip to contentSkip to conversation

FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF

PATCH RESEND In review Jerone Young 3 participants 5 messages Aug 3, 2010

lore
Share & tools
lore
#0 lore raw

PATCH RESEND 1/1 FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF

The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks.

This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF.

I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great.

Also to add the other Thinkpads have different subsystem codec IDs. Here are examples:

X301:
http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt

X200:
http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt

W500:
http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt

pci/hda/patch_conexant.c +5 -0
index c49030b..abc320a 100644
@@ -2004,6 +2006,11 @@ static int patch_cxt5051(struct hda_codec *codec)
 		break;
 	case CXT5051_LENOVO_X200:
 		spec->init_verbs[0] = cxt5051_lenovo_x200_init_verbs;
+		/* Thinkpad X301 does not have S/PDIF wired and no ability
+		   to use a docking station. */
+		if (codec->subsystem_id == 0x17aa211f) {
+			spec->multiout.dig_out_nid = 0; 
+		}
 		break;
 	case CXT5051_F700:
 		spec->init_verbs[0] = cxt5051_f700_init_verbs;
#1 lore raw

I think Takashi wants you to use "git format-patch" to generate the patch. At least I do so and that has been working well so far.

// David

2010-08-03 08:05, Jerone Young skrev:

Quoted 46 lines

The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks.

This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF.

I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great.

Also to add the other Thinkpads have different subsystem codec IDs. Here are examples:

X301:
http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt

X200:
http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt

W500:
http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt

pci/hda/patch_conexant.c +5 -0
index c49030b..abc320a 100644
@@ -2004,6 +2006,11 @@ static int patch_cxt5051(struct hda_codec *codec)
 		break;
 	case CXT5051_LENOVO_X200:
 		spec->init_verbs[0] = cxt5051_lenovo_x200_init_verbs;
+		/* Thinkpad X301 does not have S/PDIF wired and no ability
+		   to use a docking station. */
+		if (codec->subsystem_id == 0x17aa211f) {
+			spec->multiout.dig_out_nid = 0; 
+		}
 		break;
 	case CXT5051_F700:
 		spec->init_verbs[0] = cxt5051_f700_init_verbs;

_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

Signature · 2 lines
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
#2 lore raw

At Tue, 03 Aug 2010 08:16:59 +0200,

Quoted 3 lines · David Henningsson

I think Takashi wants you to use "git format-patch" to generate the patch. At least I do so and that has been working well so far.

Right. The previous generated patches are really broken. You can't apply it via patch program, even manually. If you are using GIT, better to let GIT working such a boring job :)

Takashi

Quoted 55 lines

// David

2010-08-03 08:05, Jerone Young skrev:

Quoted 46 lines

The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks.

This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF.

I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great.

Also to add the other Thinkpads have different subsystem codec IDs. Here are examples:

X301:
http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt

X200:
http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt

W500:
http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt

pci/hda/patch_conexant.c +5 -0
index c49030b..abc320a 100644
@@ -2004,6 +2006,11 @@ static int patch_cxt5051(struct hda_codec *codec)
 		break;
 	case CXT5051_LENOVO_X200:
 		spec->init_verbs[0] = cxt5051_lenovo_x200_init_verbs;
+		/* Thinkpad X301 does not have S/PDIF wired and no ability
+		   to use a docking station. */
+		if (codec->subsystem_id == 0x17aa211f) {
+			spec->multiout.dig_out_nid = 0; 
+		}
 		break;
 	case CXT5051_F700:
 		spec->init_verbs[0] = cxt5051_f700_init_verbs;

_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

Signature · 2 lines
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
#3 lore raw

Sorry about that .. not sure why 2 times it screwed up. I'll get it right on my next send. The last one was missing parts of the diff..again.

Jerone

Quoted 72 lines · Takashi Iwai

At Tue, 03 Aug 2010 08:16:59 +0200,

Quoted 3 lines · David Henningsson

I think Takashi wants you to use "git format-patch" to generate the patch. At least I do so and that has been working well so far.

Right. The previous generated patches are really broken. You can't apply it via patch program, even manually. If you are using GIT, better to let GIT working such a boring job :)

Takashi

Quoted 44 lines

// David

2010-08-03 08:05, Jerone Young skrev:

Quoted 41 lines

The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks.

This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF.

I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great.

Also to add the other Thinkpads have different subsystem codec IDs. Here are examples:

X301:
http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt

X200:
http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt

W500:
http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt

pci/hda/patch_conexant.c +5 -0
index c49030b..abc320a 100644
@@ -2004,6 +2006,11 @@ static int patch_cxt5051(struct hda_codec *codec)
 		break;
 	case CXT5051_LENOVO_X200:
 		spec->init_verbs[0] = cxt5051_lenovo_x200_init_verbs;
+		/* Thinkpad X301 does not have S/PDIF wired and no ability
+		   to use a docking station. */
+		if (codec->subsystem_id == 0x17aa211f) {
+			spec->multiout.dig_out_nid = 0; 
+		}
 		break;
 	case CXT5051_F700:
 		spec->init_verbs[0] = cxt5051_f700_init_verbs;
Quoted 11 lines
Quoted 5 lines

_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

Signature · 2 lines
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic

_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

#4 lore raw
In reply to Jerone Young

At Tue, 03 Aug 2010 01:05:20 -0500,

pci/hda/patch_conexant.c static int patch_cxt5051(struct hda_codec *codec)

Quoted 29 lines · Jerone Young

The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks.

This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF.

I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great.

Also to add the other Thinkpads have different subsystem codec IDs. Here are examples:

X301:
http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt

X200:
http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt

W500:
http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt

pci/hda/patch_conexant.c +0 -0
index c49030b..abc320a 100644
@@ -2004,6 +2006,11 @@ static int patch_cxt5051(struct hda_codec *codec)

It's still broken. Could you simply make a patch via git-format-patch or send via git-send-email?

Takashi