Skip to contentSkip to conversation

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

PATCH In review Jerone Young 2 participants 2 messages Aug 3, 2010

lore
Share & tools
lore
#0 lore raw

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

Sorry about the last two times. Something was really going wrong.

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..efca393 100644
@@ -2004,6 +2004,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

At Tue, 03 Aug 2010 01:46:42 -0500,

Quoted 19 lines · Jerone Young

Sorry about the last two times. Something was really going wrong.

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

Quoted 8 lines

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

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

Applied both patches now (after fixing the coding style manually).

At the next time, please run scripts/checkpatch.pl and fix the issues before submission.

Thanks!

Takashi

Quoted 19 lines
pci/hda/patch_conexant.c +5 -0
index c49030b..efca393 100644
@@ -2004,6 +2004,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;